The present invention relates generally to systems used to generate and format information in a desirable and predetermined manner. More particularly, the present invention relates to methods and systems for generating printed examinations or tests containing relatively complex visual elements such as mathematical symbols, operators, expressions, graphs, and equations.
Recently, computer software has been developed to assist teachers in developing examinations or tests. In general, these types of programs permit teachers to develop, refine, and edit examinations on a computer. When the teacher has completed developing a test, a desired number of copies of the test may be printed and the test may then be administered to students. Among the educational software available, some software developers have attempted to provide software for developing math tests. The overall purpose of such software is to measure a student's understanding of a topic by posing relevant questions in a printed test or examination. The student's responses to such questions are then analyzed and graded, in some cases by computer and, in others, by hand.
There are many ways that such software can be classified. One way is to measure the manner in which the software stores and displays information. Using this criteria at least two classes have been created to date. They are as follows:
1) static-content, static-presentation programs (test banks); PA1 2) static-content, static-presentation word processor or page layout programs (word processors).
As noted, in order to display a question or problem on a test, two things must be considered: the content of the question, and the visual presentation of that content. Depending on what class of software is being used or is available, creating and storing content and presenting it is carried out in different ways. The content of a question is the educational core, a real-world fact that the student should know, or a computational skill that the student should be capable of applying. Test bank programs (class 1) have a large number of fixed (static, or non-dynamic) items that embody the content. In these items, the content is fixed at exact values that never change, although the static test bank can alternate between a small set of similar problems. In static test bank programs, the content never changes, so the visual display of the content can be decided by a human at the time that the content is authored. Thus, the human author manually arranges the question and distractors (correct answer and several incorrect answers in multiple choice test) to yield an examination or tests with a pleasing appearance. The appearance decisions are made once, during production, by a human, and are never significantly altered after that. This is true of word processor approaches (class 2) also.
A third class of programs differ from test banks and word processors by having the capability of incorporating content that varies from question tc question. However, they require a person, i.e., the author, to determine the presentation manually.
There are or have been many programs that fall within the first two classes. However, there are few if any programs that fall into the third class. Yet if a system could be developed having dynamic content and also dynamic presentation capabilities, then a wide variety of examinations could be created. Significantly, different tests of the same difficulty could be created and administered. Thus, each student would have a different exam, containing different problems and even having different ordering and formatting of problems yet still be tested on the same subject matter at the same difficulty level. While such benefits would be extremely useful in eliminating the possibility of cheating, this fourth class of dynamic content, dynamic-presentation programs has not yet been developed.
As can be appreciated, in order to have a successful math-test generating program with dynamic presentation capabilities, the software must be able to print or, more broadly, display mathematical expressions. Printing a mathematical expression has always been somewhat more difficult to accomplish than printing characters. Unlike ordinary text, which consists of relatively uniformly sized and spaced characters and spaces, mathematical expressions may also include numerals, operators, and a variety of symbols. In addition, the sizing and spacing of these components may be non-uniform. Further still, mathematical expressions may also take the form of curves on graphs, matrices, and other relatively complex forms. Thus, the methodologies used by, for example, word processing programs to produce and format textual output are not successful in a dynamic presentation setting. When the objective is to print a complete test consisting of a series of questions each containing one or more mathematical expressions, the deficiencies of existing formatting and printing technologies become even more apparent.
Furthermore, when dynamic content is desired, so that a plurality of different tests having different questions of the same difficulty can be produced, there must be a means for adjusting the formatting of tests so that they fit in the same amount of space.
Accordingly, it would be desirable to have a dynamic content and dynamic presentation software and computer system for generating math tests or other tests which may contain mathematical expressions or graphical images where the system has the capability of formatting and printing mathematical expressions. It would also be desirable to have a test generating and formatting system capable of producing a test in multiple but equally difficult forms, each form of which fits in an equal or at least similar amount of space.